home *** CD-ROM | disk | FTP | other *** search
JavaScript | 2000-04-19 | 2.7 KB | 93 lines | [TEXT/MOSS] |
- /* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
- *
- * The contents of this file are subject to the Netscape Public
- * License Version 1.1 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.mozilla.org/NPL/
- *
- * Software distributed under the License is distributed on an "AS
- * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
- * implied. See the License for the specific language governing
- * rights and limitations under the License.
- *
- * The Original Code is mozilla.org code.
- *
- * The Initial Developer of the Original Code is Netscape
- * Communications Corporation. Portions created by Netscape are
- * Copyright (C) 1998 Netscape Communications Corporation. All
- * Rights Reserved.
- *
- * Contributor(s):
- * Jean-Francois Ducarroz <ducarroz@netscape.com>
- * Seth Spitzer <sspitzer@netscape.com>
- * Alec Flett <alecf@netscape.com>
- */
-
- // get the current identity from the UI
- var identityElement;
-
- var accountManager = Components.classes["component://netscape/messenger/account-manager"].getService(Components.interfaces.nsIMsgAccountManager);
-
-
- var AddressAutoCompleteListener = {
- onAutoCompleteResult: function(aItem, aOriginalString, aMatch) {
- dump("aItem = " + aItem + "\n");
-
- if ( aItem )
- {
- dump("value = " + aItem.value + "\n");
- dump("aOriginalString = " + aOriginalString + "\n");
- dump("aMatch = " + aMatch + "\n");
-
- aItem.value = aMatch;
- aItem.lastValue = aMatch;
- }
- }
- };
-
- function AutoCompleteAddress(inputElement)
- {
- ///////////// (select_doc_id, doc_id)
-
- dump("inputElement = " + inputElement + "\n");
-
- //Do we really have to autocomplete?
- if (inputElement.lastValue && inputElement.lastValue == inputElement.value)
- return;
-
- var row = awGetRowByInputElement(inputElement);
-
- var select = awGetPopupElement(row);
-
- dump("select = " + select + "\n");
- dump("select.value = " + select.value + "\n");
-
- if (select.value == "")
- return;
-
- if (select.value == "addr_newsgroups") {
- dump("don't autocomplete, it's a newsgroup");
- return;
- }
-
- var ac = Components.classes['component://netscape/messenger/autocomplete&type=addrbook'];
- if (ac) {
- ac = ac.getService();
- }
- if (ac) {
- ac = ac.QueryInterface(Components.interfaces.nsIAutoCompleteSession);
- }
-
- if (!identityElement)
- identityElement = document.getElementById("msgIdentity");
-
- var identity=null;
-
- if (identityElement) {
- idKey = identityElement.value;
- identity = accountManager.getIdentity(idKey);
- }
-
- ac.autoComplete(identity, inputElement, inputElement.value, AddressAutoCompleteListener);
- }
-